﻿<%@ Page Title="" Language="C#" MasterPageFile="~/Master/Site.master" AutoEventWireup="true" CodeFile="Frm_NuevoGrupo.aspx.cs" Inherits="Views_General_Frm_NuevoGrupo" %>

<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" Runat="Server">
<div >
    <ul id="submenu" class="nav nav-pills"></ul>
</div>
<ul id="titulo" class="breadcrumb" style="display:none;">
  
</ul>
<div id="warning" class="alert">
  <button type="button" class="close" data-dismiss="alert">&times;</button>
  <strong>Sugerencia!</strong> Seleccione un tipo del menu.
</div>
<div id="contenido" class="row-fluid" style="display:none;">
    <div class="span3">
        <ul id="listaClases" class="nav nav-tabs nav-stacked">
            
        </ul>
    </div>
    <div class="span9">
    <fieldset id="inputs">
        <div class="form-horizontal">
        <div class="control-group">
            <label class="control-label" for="txtNombreComp">Nombre Componente </label>
            <div class="controls">
            <input type="text" runat="server" id="txtNombreComp" placeholder="Nombre Componente"  name="Nombre Componente" validationMessage="Nombre Componente es requerido!" required />
            </div>
        </div>	
        </div>
    </fieldset> 

    <!-- Table -->
     <div id="gridItems"></div>
     <br />
    <%--<hr style="margin:0px;"/>--%>
    <div class="row-fluid">
        <div class="span6"><input id="btnInsertarUsuario" type="submit" value="Registrar" class="btn btn-success btn-block btn-lg" /></div>
        <div class="span6"><a href="#" id="btnCancelarUsuario" class="btn btn-primary btn-block btn-lg">Cancelar</a></div>
    </div>
    </div>
</div>
<!-- Modal -->
<div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
  <div class="modal-header">
    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
    <h3 id="myModalLabel">Items Encontrados</h3>
  </div>
  <div class="modal-body">
    <!-- Table -->
     <div id="gridModal"></div>
  </div>
  <div class="modal-footer">
    <button class="btn" data-dismiss="modal" aria-hidden="true">Cerrar</button>
    <button id="saveSelection" class="btn btn-primary">Grabar Cambios</button>
  </div>
</div>
<input type="hidden" id="idClase" value="0"/>
<input type="hidden" id="idTipo" value="0"/>
<input type="hidden" id="idSubTipo" value="0"/>

<input type="hidden" id="hd_idProyecto" runat="server" />
<input type="hidden" id="hd_idGrupo" runat="server" />
<input type="hidden" id="hd_idTipo" runat="server" />
<input type="hidden" id="hd_idSubTipo" runat="server" />
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="ScriptContent" Runat="Server">
<script src="<%=ResolveClientUrl("~/Scripts/data/TiposElementos.js" ) %>" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function () {

        loadSubMenu();
        var today = new Date();
        debugger;
        var nTipo = $("#<%=hd_idTipo.ClientID %>").val();
        var nSubTipo = $("#<%=hd_idSubTipo.ClientID %>").val();
        if (nTipo > 0 && nSubTipo > 0) {
            $("#idTipo").val(nTipo);
            $("#idSubTipo").val(nSubTipo);
            loadClases(nTipo, nSubTipo);
            loadItems(true);
        }
        $("#submenu").on("click", "a", function () {
            var a = $(this);
            if (a.attr("data-toggle") == undefined && a.parentsUntil(".nav").length > 2) {
                var nivel1 = a.parentsUntil("li.dropdown").siblings("a")
                var li1 = jQuery("<li>");
                li1.append($(nivel1).attr("data-tipo"));
                li1.append(jQuery("<span>", { "class": "divider" }).text("/"));
                var li2 = jQuery("<li>");
                li2.append(a.attr("data-subtipo"));
                $("#titulo").empty();
                $("#titulo").append(jQuery("<li>").text("Editor de Componente").append(jQuery("<span>", { "class": "divider" }).text("/")));
                $("#titulo").append(li1);
                $("#titulo").append(li2).show();
                loadClases(nivel1.attr("data-id"), a.attr("data-id"));
                debugger;
                if ($("#<%=hd_idGrupo.ClientID %>").val() > 0 && nTipo == nivel1.attr("data-id") && nSubTipo == a.attr("data-id")) {
                    loadItems(true);
                } else {
                    loadItems(false);
                }
            } else {
                if (a.attr("data-toggle") == undefined) {
                    $("#titulo").empty();
                    $("#titulo").append(jQuery("<li>").text("Editor de Componente").append(jQuery("<span>", { "class": "divider" }).text("/")));
                    $("#titulo").append(a.attr("data-tipo")).show();
                    loadClases(a.attr("data-id"), 0);
                    if ($("#<%=hd_idGrupo.ClientID %>").val() > 0 && nTipo == nivel1.attr("data-id")) {
                        loadItems(true);
                    } else {
                        loadItems(false);
                    }
                }
            }
        });
        $("#listaClases").on("click", "a", function () {
            var a = $(this);
            $("#idClase").val(a.attr("data-clase"));
            $('#myModal').modal('show');
        });


        $('#myModal').on('show', function (e) {
            loadModal();
        })

        $('#myModal').on('hidden', function () {
            //checkedList
            var grid = $("#gridItems").data("kendoGrid");
            ////debugger;
            for (var i = 0; i < checkedList.length; i++) {
               
                var obj = {
                    IdGrupoDetalle : 0,
                    IdComponente: checkedList[i].IdComponente,
                    IdGrupo : 0,
                    Descripcion:   checkedList[i].Descripcion,
                    P01UnidadDesc: checkedList[i].P01UnidadDesc,
                    P07ClaseDesc: checkedList[i].P07ClaseDesc,
                    Cantidad: checkedList[i].Cantidad,
                    PrecioUnitarioMinimo: checkedList[i].PrecioUnitarioMinimo,
                    PrecioUnitarioMaximo: checkedList[i].PrecioUnitarioMaximo,
                    PrecioTotalMinimo: checkedList[i].PrecioTotalMinimo,
                    PrecioTotalMaximo: checkedList[i].PrecioTotalMaximo,
                    Capacidad: "",
                    InfoPublica: ""
                };
                grid.dataSource.add(obj);
            }
            checkedList = new Array;
        })

        //        $("#btnInsertarUsuario").on("click", function () {
        //            //Componentes / Items
        //            var validator = $("#inputs").kendoValidator().data("kendoValidator");
        //            if (validator.validate() != true) {
        //                return false;
        //            }

        //            var grid = $("#gridItems").data("kendoGrid");
        //            ////debugger;
        //            var listaItems = [];
        //            $.each(grid.dataSource.data(), function (i, item) {
        //                ////debugger;
        //                var grupoDetalle = new GrupoDetalle();
        //                grupoDetalle.IdComponente = item.IdComponente;
        //                grupoDetalle.Cantidad = item.Cantidad;
        //                //ddddatos porcentajes 
        //                //ObtenerTotalMontosPorIdProyectoOtros
        //                
        //                if (item.P07Clase==91){
        //                    grupoDetalle.PrecioTotalMaximo = item.PrecioUnitarioMinimo;
        //                    grupoDetalle.PrecioTotalMinimo = item.PrecioUnitarioMinimo;
        //                } else {
        //                    grupoDetalle.PrecioTotalMaximo = item.PrecioTotalMaximo;
        //                    grupoDetalle.PrecioTotalMinimo = item.PrecioTotalMinimo;
        //                }

        //                grupoDetalle.P07Clase = item.P07Clase;
        //                grupoDetalle.UsuCre = "user1";
        //                grupoDetalle.IpReg = "192.168.1.11";
        //                listaItems.push(grupoDetalle);
        //            });
        //            //grupo
        //            var grupo = new Grupo();
        //            grupo.Nombre = $("#txtNombreComp").val();
        //            grupo.Codigo = "";
        //            grupo.p05Tipo = $("#idTipo").val();
        //            grupo.p06Subtipo = $("#idSubTipo").val();
        //            grupo.UsuCre = "user1";
        //            grupo.IpReg = "192.168.1.11";

        //            ProyectoGrupo
        //            var proyectoGrupo = new ProyectoGrupo();
        //            proyectoGrupo.P04Titulo = 0;
        //            proyectoGrupo.IdGrupo = 0;
        //            proyectoGrupo.IdProyecto = 0;
        //            proyectoGrupo.UsuCre = "user1";
        //            proyectoGrupo.IpReg = "192.168.1.11";

        //            $.ajax({
        //                type: "POST",
        //                url: "Frm_NuevoGrupo.aspx/InsertAll",
        //                //data: kendo.stringify({ gd: d, g: grupo, pg: proyectoGrupo }),
        //                data: kendo.stringify({ g: grupo, pg: proyectoGrupo, gd: listaItems }),
        //                contentType: "application/json; charset=utf-8",
        //                dataType: "json",
        //                success: function (data) {
        //                    if (data.d == "null")
        //                        return;
        //                    if (data.d) {
        //                        var num = data.d;
        //                        //                        $("#idProyecto").text(num);
        //                        //                        $("#idProyecto").text(num);
        //                        //                        $("#btn_agregarGrupos").show();
        //                        //                        $("#btn_NuevoProyecto").hide();
        //                        alert("Se Grabo Grupo Correctamente.");
        //                        window.location = '<%=ResolveClientUrl("~/Views/AdminEscenarios/Frm_Proyecto.aspx" ) %>' + "?id=" + $("#<%=hd_idProyecto.ClientID %>").val();
        //                    }
        //                },
        //                error: function (data) {
        //                    alert("Ocurrio un Error.");
        //                }
        //            });
        //            ////debugger;
        //            return false;
        //        });
        $("#btnCancelarUsuario").on("click", function () {
            var idProyecto =  $("#<%=hd_idProyecto.ClientID %>").val();
            window.location = "<%=ResolveClientUrl("~/Views/AdminEscenarios/Frm_Proyecto.aspx" ) %>" +"?id="+ idProyecto;
        });

        $("#btnInsertarUsuario").on("click", function () {
            //Componentes / Items
            var grid = $("#gridItems").data("kendoGrid");
            debugger;
            if (grid.dataSource.data().length < 1) {
                alert("Debe ingresar al menos un Item!");
                return false;
            }
            var validator = $("#inputs").kendoValidator().data("kendoValidator");
            if (validator.validate() != true) {
                return false;
            }
            
            ////debugger;
            var listaItems = [];
            $.each(grid.dataSource.data(), function (i, item) {
                ////debugger;
                var grupoDetalle = new GrupoDetalle();
                grupoDetalle.IdComponente = item.IdComponente;
                grupoDetalle.Cantidad = item.Cantidad;
                //ddddatos porcentajes 
                //ObtenerTotalMontosPorIdProyectoOtros

                if (item.P07Clase == 91) {
                    grupoDetalle.PrecioTotalMaximo = item.PrecioUnitarioMinimo;
                    grupoDetalle.PrecioTotalMinimo = item.PrecioUnitarioMinimo;
                } else {
                    grupoDetalle.PrecioTotalMaximo = item.PrecioTotalMaximo;
                    grupoDetalle.PrecioTotalMinimo = item.PrecioTotalMinimo;
                }

                grupoDetalle.P07Clase = item.P07Clase;
                grupoDetalle.UsuCre = "user1";
                grupoDetalle.IpReg = "192.168.1.11";
                listaItems.push(grupoDetalle);
            });
            //grupo
            var grupo = new Grupo();
            grupo.Nombre = $("#<%=txtNombreComp.ClientID %>").val();
            grupo.Codigo =  "";
            grupo.IdGrupo = $("#ctl00_MainContent_hd_idGrupo").val();
            grupo.p05Tipo = $("#idTipo").val();
            grupo.p06Subtipo = $("#idSubTipo").val();
            grupo.UsuCre = "user1";
            grupo.IpReg = "192.168.1.11";
            debugger;
            ProyectoGrupo
            var proyectoGrupo = new ProyectoGrupo();
            proyectoGrupo.P04Titulo = 0;
            proyectoGrupo.IdGrupo = 0;
            proyectoGrupo.IdProyecto = 0;
            proyectoGrupo.UsuCre = "user1";
            proyectoGrupo.IpReg = "192.168.1.11";

            $.ajax({
                type: "POST",
                url: "Frm_NuevoGrupo.aspx/InsertAll",
                //data: kendo.stringify({ gd: d, g: grupo, pg: proyectoGrupo }),
                data: kendo.stringify({ g: grupo, pg: proyectoGrupo, gd: listaItems }),
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (data) {
                    debugger;
                    if (data.d == "null")
                        return;
                    if (data.d) {
                        var num = data.d;
                        //                        $("#idProyecto").text(num);
                        //                        $("#idProyecto").text(num);
                        //                        $("#btn_agregarGrupos").show();
                        //                        $("#btn_NuevoProyecto").hide();
                        //alert("OK");
                        window.location = '<%=ResolveClientUrl("~/Views/AdminEscenarios/Frm_Proyecto.aspx" ) %>' + "?id=" + $("#<%=hd_idProyecto.ClientID %>").val();
                    }
                },
                error: function (data) {
                    alert("Ocurrio un Error.");
                }
            });
            ////debugger;
            return false;
        });
    });

    function loadClases(idTipo,idSubTipo) {
        
        //cargando clases en base al tipo y subtipo
        var ul = $("#listaClases");
        $.ajax({
            type: "POST",
            url: "Frm_NuevoGrupo.aspx/ObtenerClasesByTipoSubTipo",
            data: kendo.stringify({ idTipo: idTipo, idSubTipo: idSubTipo }),
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (data) {
                if (data.d == "null")
                    return;
                if (data.d) {
                    var lista = data.d;
                    ul.empty();
                    $.each(lista, function (index1, value) {
                        var listaDesplegable = jQuery("<li>").append(jQuery("<a>", { "href": "#", "data-clase": value.IdParametro }).text(value.Nombre));
                        ul.append(listaDesplegable);
                    });
                    ul.show();
                    $("#idTipo").val(idTipo);
                    $("#idSubTipo").val(idSubTipo);
                }
            },
            error: function (data) {
                alert("Ocurrio un Error.");
            }
        });
        $("#warning").hide();
        $("#contenido").show();
    }

    function loadSubMenu() {
        $("#sasa").show();
        var ul = $("#submenu");

        $.ajax({
            type: "POST",
            url: "Frm_NuevoGrupo.aspx/ObtenerSubMenu",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (data) {
                if (data.d == "null")
                    return;
                if (data.d) {
                    var lista = data.d;
                    ul.empty();
                    var idTipoE = $("#<%=hd_idTipo.ClientID %>").val();
                    var TipoE = "";
                    var idSubTipoE = $("#<%=hd_idSubTipo.ClientID %>").val();
                    var SubTipoE = "";
                    var marcadorTipo = false;
                    $.each(lista, function (index1, value) {
                        if (idTipoE > 0 && idTipoE == value.Tipo.IdParametro) {
                            marcador = true;
                            TipoE = value.Tipo.Nombre;
                        } else {
                            marcador = false;
                        }
                        var listaDesplegable;
                        if (value.SubTipos.length > 0) {
                            listaDesplegable = jQuery("<li>", { "class": "dropdown" });
                            var a = jQuery("<a>", { "href": "#", "class": "dropdown-toggle", "data-toggle": "dropdown", "data-tipo": value.Tipo.Nombre, "data-id": value.Tipo.IdParametro });
                            a.append(value.Tipo.Nombre);
                            a.append(jQuery("<span>", { "class": "caret" }));
                            listaDesplegable.append(a);
                            var subTipos = jQuery("<ul>", { "class": "dropdown-menu" });
                            $.each(value.SubTipos, function (index1, subTipo) {
                                if (marcador && idSubTipoE > 0 && idSubTipoE == subTipo.P06SubTipo) {
                                    SubTipoE = subTipo.P06SubTipoDesc;
                                }
                                subTipos.append(jQuery("<li>").append(jQuery("<a>", { "href": "#", "data-subtipo": subTipo.P06SubTipoDesc, "data-id": subTipo.P06SubTipo }).text(subTipo.P06SubTipoDesc)));
                            });
                            listaDesplegable.append(subTipos);
                        } else {
                            listaDesplegable = jQuery("<li>").append(jQuery("<a>", { "href": "#", "data-tipo": value.Tipo.Nombre, "data-id": value.Tipo.IdParametro }).text(value.Tipo.Nombre));
                        }
                        ul.append(listaDesplegable);

                        debugger;
                        //recontruyendo ubicacion
                        if (idTipoE > 0 && idSubTipoE > 0) {
                            var li1 = jQuery("<li>");
                            li1.append(TipoE);
                            li1.append(jQuery("<span>", { "class": "divider" }).text("/"));
                            var li2 = jQuery("<li>");
                            li2.append(SubTipoE);
                            $("#titulo").empty();
                            $("#titulo").append(jQuery("<li>").text("Editor de Componente").append(jQuery("<span>", { "class": "divider" }).text("/")));
                            $("#titulo").append(li1);
                            $("#titulo").append(li2).show();
                        }
                    });
                }
            },
            error: function (data) {
                alert("Ocurrio un Error.");
            }
        });
    }

    function loadItems(flag) {
        $("#gridItems").kendoGrid({
            dataSource: {
                type: "json",
                transport: {
                    read: {
                        type: "POST",
                        url: "Frm_NuevoGrupo.aspx/GetItems",
                        contentType: "application/json; charset=utf-8",
                        dataType: "json"
                    },
                    parameterMap: function (parametros) {
                        ////debugger;
                        return kendo.stringify({ idGrupo: $("#<%=hd_idGrupo.ClientID %>").val(), recargar: flag })
                    }
                },
                schema: {
                    data: function (response) {
                        if (response.d.length > 0) {
                            var rpta = [];
                            $.each(response.d, function (index, value) {
                                var obj = {
                                    IdGrupoDetalle : value.IdGrupoDetalle,
                                    IdComponente: value.IdComponente,
                                    IdGrupo : value.IdGrupo,
                                    Descripcion: value.IdComponenteDesc,
                                    P01UnidadDesc: value.P01UnidadDesc,
                                    P07ClaseDesc: value.P07ClaseDesc,
                                    Cantidad: value.Cantidad,
                                    PrecioUnitarioMinimo: value.PrecioMinimo,
                                    PrecioUnitarioMaximo: value.PrecioMaximo,
                                    PrecioTotalMinimo: value.PrecioTotalMinimo,
                                    PrecioTotalMaximo: value.PrecioTotalMaximo,
                                    Capacidad: "",
                                    InfoPublica: ""
                                };
                                rpta.push(obj);
                            });
                            return rpta;
                        }
                    },
                    model: {
                        id: "IdGrupoDetalle",
                        fields: {
                            IdComponente: { type: "number", editable: false },
                            Descripcion: { type: "string", editable: false },
                            P01UnidadDesc: { type: "string", editable: false },
                            P07ClaseDesc: { type: "string", editable: false },
                            Cantidad: { type: "number", validation: { min: 0, max: 100 }, required: true },
                            PrecioUnitarioMinimo: { type: "number", editable: false },
                            PrecioUnitarioMaximo: { type: "number", editable: false },
                            PrecioTotalMinimo: { type: "number", editable: false },
                            PrecioTotalMaximo: { type: "number", editable: false },
                            Capacidad: { type: "string", editable: false },
                            InfoPublica: { type: "string", editable: false }
                        }
                    }
                }
                //,pageSize: 5
            },
            selectable: "simple",
            sortable: true,
            editable: {
                confirmation: "Esta Seguro de Eliminar el Registro?"
            },
            pageable: false/* {
                refresh: true,
                pageSizes: true,
                buttonCount: 5
            }*/,
            remove:BorrarItem,
            columns: [
                    { field: "IdComponente", title: "Codigo" },
                    { field: "Descripcion", title: "Descripción", width: "200px" },
                    { field: "P01UnidadDesc", title: "Unidad" },
                    { field: "P07ClaseDesc", title: "Clase" },
                    { field: "Cantidad", title: "Cantidad"/*, width: "90px" */ },
                    { field: "PrecioUnitarioMinimo", title: "Precio Unitario Mínimo"/*, width: "90px" */ },
                    { field: "PrecioUnitarioMaximo", title: "Precio Unitario Máximo"/*, width: "90px" */ },
                    { field: "PrecioTotalMinimo", title: "Precio Total Mínimo"/*, width: "90px" */ },
                    { field: "PrecioTotalMaximo", title: "Precio Total Máximo"/*, width: "90px" */ },
            //{ command: [{ name: "edit", text: "" }, { name: "destroy", text: ""}], width: "90px" }
                    {command: [{ name: "destroy", text: "", width: "40px"}], width: "50px" }
            ],
            save: onSave

        });

    }
    function BorrarItem(e) {
        //window.console.log("Borrado", e.model.IdGrupo);
        debugger;
        if (e.model.IdGrupoDetalle > 0){
            $.ajax({
                type: "POST",
                url: "Frm_NuevoGrupo.aspx/BorrarItem",
                data: kendo.stringify({  idGrupoDetalle: e.model.IdGrupoDetalle ,idGrupo : e.model.IdGrupo}),
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (data) {
                    if (data.d == "null")
                        return;
                    if (data.d == "OK") {
                        alert("Se Elimino Correctamente el Grupo.");
                    }
                },
                error: function (data) {
                    alert("Ocurrio un Error al Borrar Grupo.");
                }
            });
        }
        
    }
    function loadModal() {
        var colum1 = [
                    { field: "check_row", title: " ", width: 40, template: "<input class='checkbox' type='checkbox' />" },
                    { field: "Descripcion", title: "Descripción", width: "200px" },
                    { field: "P01UnidadDesc", title: "Unidad"/*, width: "90px" */ },
                    { field: "Cantidad", title: "Cantidad"/*, width: "90px" */ },
                    { field: "PrecioUnitarioMinimo", title: "Precio Unitario Mínimo"/*, width: "90px" */ },
                    { field: "PrecioUnitarioMaximo", title: "Precio Unitario Máximo"/*, width: "90px" */ },
                    { field: "PrecioTotalMinimo", title: "Precio Total Mínimo"/*, width: "90px" */ },
                    { field: "PrecioTotalMaximo", title: "Precio Total Máximo"/*, width: "90px" */ }
                ];
        if ($("#idClase").val() == "91") {
            colum1 = [
                    { field: "check_row", title: " ", width: 40, template: "<input class='checkbox' type='checkbox' />" },
                    { field: "Descripcion", title: "Descripción", width: "200px" },
                    { hidden: true, field: "P01UnidadDesc", title: "Unidad"/*, width: "90px" */ },
                    { hidden: true, field: "Cantidad", title: "Cantidad"/*, width: "90px" */ },
                    { hidden: true, field: "PrecioUnitarioMinimo", title: "Precio Unitario Mínimo"/*, width: "90px" */ },
                    { hidden: true, field: "PrecioUnitarioMaximo", title: "Precio Unitario Máximo"/*, width: "90px" */ },
                    { hidden: true, field: "PrecioTotalMinimo", title: "Precio Total Mínimo"/*, width: "90px" */ },
                    { hidden: true, field: "PrecioTotalMaximo", title: "Precio Total Máximo"/*, width: "90px" */ },
                    { hidden: true, field: "Capacidad", title: "Capacidad"/*, width: "90px" */ },
                    { hidden: true, field: "InfoPublica", title: "Publica"/*, width: "90px" */ }
                ];
        }
        $("#gridModal").empty();
        var gridM = $("#gridModal").kendoGrid({
            dataSource: {
                type: "json",
                transport: {
                    read: {
                        type: "POST",
                        url: "Frm_NuevoGrupo.aspx/ObtenerItems",
                        contentType: "application/json; charset=utf-8",
                        dataType: "json"
                    },
                    parameterMap: function (parametros) {
                        ////debugger;
                        return kendo.stringify({ idTipo: $("#idTipo").val(), idSubTipo: $("#idSubTipo").val(), idClase: $("#idClase").val() })
                    }
                },
                schema: {
                    data: "d",
                    total: "d.length",
                    model: {
                        id: "IdComponente",
                        fields: {
                            check_row: { editable: false },
                            Descripcion: { type: "string", editable: false },
                            P01UnidadDesc: { type: "string", editable: false },
                            Cantidad: { type: "number", validation: { min: 0, max: 100 }, required: true },
                            PrecioUnitarioMinimo: { type: "number", editable: false },
                            PrecioUnitarioMaximo: { type: "number", editable: false },
                            PrecioTotalMinimo: { type: "number", editable: false },
                            PrecioTotalMaximo: { type: "number", editable: false },
                            Capacidad: { type: "string", editable: false },
                            InfoPublica: { type: "string", editable: false }
                        }
                    }
                }
                //,pageSize: 5
            },
            scrollable: true,
            sortable: false,
            filterable: false,
            dataBound: onDataBound,
            //selectable: "multiple,row",
            editable: true,
            pageable: false/* {
                input: true,
                numeric: false
            }*/,
            columns: colum1,
            save: onSave,
            change: function (e) {
             //Idiniciobugger;
                var selectedRows = this.select();
                var selectedDataItems = [];
                for (var i = 0; i < selectedRows.length; i++) {
                    var dataItem = this.dataItem(selectedRows[i]);
                    selectedDataItems.push(dataItem);
                }
                // selectedDataItems contains all selected data items
            }
        });
        
    }

    $("#gridModal").on("click", ".checkbox", selectRow);
    $("#saveSelection").bind("click", function () {
        //debugger;
        var grid = $("#gridModal").data("kendoGrid");
        var dataSource = grid.dataSource.data();
        var datosvalidos = true;
        $.each(dataSource, function (index1, row) {

            if (row.check_row) {
                checkedList.push(row);                
                if (row.P07Clase != 91) {
                    if (row.Cantidad == 0) { datosvalidos = false; }
                    if (row.Cantidad == "") { datosvalidos = false; }
                    if (row.Cantidad == null) { datosvalidos = false; }
                }
            }
        });
        if (datosvalidos) { $('#myModal').modal('hide'); }
        else {
            alert("Ingrese una cantidad correcta");
            checkedList = [];
        }
        return false;
    });

    var checkedList = new Array;
    //on click of the checkbox:
    function selectRow(e) {
        ////debugger;
        var checked = this.checked, row = $(this).closest("tr");
        var grid = $("#gridModal").data("kendoGrid");
        var item = grid.dataItem(row);
        if (checked) {
            //-select the row
            item.check_row = true
            row.addClass("k-state-selected");
           // =(
        } else {
            //-remove selection
           item.check_row = false
           row.removeClass("k-state-selected");
        }
    }

    //on dataBound event restore previous selected rows:
    function onDataBound(e) {
        ////debugger;
        var view = this.dataSource.view();
        for (var i = 0; i < view.length; i++) {
            if (view[i].check_row) {
                this.tbody.find("tr[data-uid='" + view[i].uid + "']")
						.addClass("k-state-selected")
						.find(".checkbox")
						.attr("checked", "checked");
            }
        }
    }

    function onSave(e) {
        //var campo = e.container.find("input[data-type=number]").attr("name");
        e.model.PrecioTotalMinimo = e.values.Cantidad * e.model.PrecioUnitarioMinimo;
        e.model.PrecioTotalMaximo = e.values.Cantidad * e.model.PrecioUnitarioMaximo;
        this.refresh();
//        var editable = campo + _EDITED;
//        //var t = $("#" + e.sender._cellId);
//        var valorNuevo = e.values[campo];
//        e.model[editable] = true;
    }

    
    
</script>

</asp:Content>

